Adaptive illumination control via activity classification

ABSTRACT

Disclosed herein are embodiments for implementing active illumination control via activity classification. An embodiment includes a processor configured to perform operations comprising receiving first sensor data generated by at least one of the plurality of sensors. Based at least in part on the first sensor data, the processor may select a first lighting profile, and instruct the light-emitting element to emit light in accordance with the first lighting profile. The processor may be further configured to receive second sensor data generated by the at least one of the plurality of sensors and to update an activity classification stored in a memory, in response to the second sensor data being different from the first sensor data. The processor may transition from the first lighting profile to a second lighting profile, in response to the updating, and may instruct the light-emitting element to emit light in accordance with the second lighting profile.

BACKGROUND

For people participating in physical activities, such as sports,recreation, cycling, exploration, orienteering, search and rescue,manual labor, for example, safety and speed of the activity may becompromised in environments where ambient light is variable. Especiallyfor outdoor activities at night, dusk, or dawn, in inclement weather, intunnels, mines, caves, or in other low-light or variable-lightenvironments, participants may carry devices to provide illumination orsupplement ambient light. For activities such as skiing, rock climbing,rafting, mountain biking, and so on, many participants use wearableillumination devices (e.g., helmet-mounted lights, head torches,headlights, headlamps, etc.), but adjusting light output may bedifficult.

Because such activities may often require participants' hands to beengaged, and because ambient light may vary due to fast-changingenvironments or moving light sources, adjusting intensity or focus ofthe artificial light from portable illumination devices may bechallenging or impossible for participants in certain situations. If theambient light changes such that a participant's artificial light becomestoo much or too little for the given situation, the participant may beat increased risk of accidents and/or may need to slow the progress ofthe activity. Even if the participant has enough time to make manualadjustments to the artificial light of a portable illumination device,such manual adjustments in the midst of certain physical activities mayalso result in similar safety risks and slowdowns.

Previous attempts at hands-free illumination devices have fallen shortof the needs of many people who could benefit from such devices.Adjusting light output simply based on predetermined values of a lightsensor on a portable illumination device fails to account for actualbehavior or for a given activity that a user of the illumination devicemay be participating in, resulting in unsuitable light output for thegiven activity. Other attempts at “smart” illumination devices haveother constraints, such as requiring pairing with Internet-enableddevices, or otherwise requiring access to certain communicationnetworks, which may be unavailable in many places where illumination isneeded, or which may require excessive power consumption.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are incorporated herein and form a part of thespecification.

FIG. 1 is a schematic diagram depicting a system that may be implementedin a wearable device or similar apparatus to provide adaptiveillumination, according to some embodiments of the present disclosure.

FIG. 2 depicts an example of inputs and control flow for adaptiveillumination, according to some embodiments of the present disclosure.

FIG. 3 is a flowchart illustrating a process implementing some of theenhanced techniques described herein, according to some embodiments ofthe present disclosure.

FIG. 4 depicts alternative data flows underlying certain examples ofadaptive illumination, according to some embodiments of the presentdisclosure.

FIG. 5 is a block diagram of an example computer system useful forimplementing various embodiments of the present disclosure.

In the drawings, like reference numbers generally indicate identical orsimilar elements. Additionally, generally, the left-most digit(s) of areference number identifies the drawing in which the reference numberfirst appears.

DETAILED DESCRIPTION

Provided herein are system, apparatus, device, method and/orcomputer-program product (non-transitory computer-readable storagemedium or device) embodiments, and/or combinations and sub-combinationsthereof, for implementing adaptive illumination control via activityclassification, capable of deployment in a wearable device or similarportable configuration.

According to the enhanced techniques disclosed herein, aspects of thepresent disclosure includes one or more systems or wearable devices tocontrol adaptive illumination, which may be based at least in part on aclassification of user activity and/or environmental conditions detectedby sensors included in the systems or wearable devices.

As one example, a wearable device may include, but is not limited to, ahelmet-mounted or head-mounted illumination device, fastened to thewearer via straps, belts, clips, or other suitable fasteners to attachto another garment, such as a hat or helmet. A wearable device may beattached to other garments or parts of the wearer's body, e.g.,shoulder-mounted (via belts or harnesses), wrist-mounted (via braceletsor wristwatches), waist-mounted (via belts or harnesses), leg-mounted(via bracelets or harnesses) configurations, or the like, are alsopossible for such wearable devices to provide adaptive illumination asappropriate. In some use cases, such illumination devices may be mountedon or attached to other tools, vehicles, etc.

FIG. 1 is a schematic diagram depicting a system 100 that may beimplemented in a wearable device or similar apparatus to provideadaptive illumination, according to some embodiments. For example,adaptive illumination may be provided via any controllable light source,including one or more light-emitting elements, such as at least oneelectric light (e.g., incandescent or electroluminescent), anyequivalents, or any combination thereof.

A light-emitting element may be part of an array of multiplelight-emitting elements, to increase intensity and/or to ensureredundancy, for example. In addition, multiple light-emitting elementsmay be independently controlled (e.g., including via separate buttons,switches, or other interface hooks), such as for different types ofillumination (e.g., focused light beam, long-range, diffuse,short-range, different color/temperature ranges, intensity ranges,directionality, etc.). Control may be provided via at least oneprocessor 504 and any accompanying circuitry (e.g., per FIG. 5 describedfurther below).

A system or wearable device may include at least one sensor that may beused for measuring or detecting environmental states or relatedenvironment conditions, collecting a continuous, discrete, continual, orevent-driven stream or signal generation, which may be logged atintervals or events and saved as specific data points.

For example, in addition to environmental sensors (e.g., inertialsensors, light sensors/photodetectors, sound sensors/microphones), othersensors may be included, such as, a biotelemetry monitor, a geolocationdevice or position-tracking device, a flow-measurement device, anyequivalents, or a combination thereof. For data logging, data points mayinclude unique identifiers, types of sensors, types of data points,timestamps, links to other sensor data or data points, other relatedmetadata, tags, any equivalents, or a combination thereof, according tosome embodiments.

A device or system for adaptive illumination may include variousinterface objects to allow a user to control or configure specificaspects of the device, including enabling or disabling specificlight-emitting elements or groups of light-emitting elements (e.g.,switches or buttons for manually adjusting light output or turning lighton or off), with adjustments enabled via physical or virtual knobs,sliders, buttons, switches, etc. Other interfaces may be used, includingcontactless interfaces such as motion sensors, cameras (imagedetection), microphones (sound signals or voice commands), and otherprogrammatic interfaces (APIs) as may interface with other software orconnected computing devices, for example.

Any of the above controls (e.g., sensor inputs or switches for manualoverride) may be used to disable certain aspects of the system or device(e.g., disable sensors or automatic control, disable data logging oractivity classification, predictions, or specific computing modules),such as in order to conserve power when adaptive illumination may not beneeded (when non-adaptive illumination may be sufficient).

In some embodiments, logged data points or control parameters mayinclude at least one tuple, vector, matrix, or at least one furtherparameter indicating a degree to which a first parameter is applied(e.g., numeric scale of luminous intensity, color or temperature,direction, strobe frequency or pattern, etc.). In some embodiments,parameter may include an indication of whether or not a given sensor,light-emitting element, control sequence, or classification module maybe active (e.g., on or off).

Depicted at the left-hand side of FIG. 1, for illustrative purposes, isa group of sensors 120. Non-exhaustive, non-limiting examples of sensorsinclude at least one inertial sensor 122, chronometer 124, photodetector126, rangefinder 128, positioning system 130, magnetometer 132, acoustictransducer 134, biotelemetry monitor 136, and expansion slots 138 forother compatible sensor modules, for some use cases in some embodiments.

Inertial sensor 122 may be a 6-axis inertial sensor, includingaccelerometer and/or gyroscope components (not shown) implemented, forexample, using microelectromechanical systems (MEMS) ornanoelectromechanical systems (NEMS). Inertial sensor 122 may beprovided as a module with various hardware and software interfaces, aswell as on-board computer or controller components to providecalculations for interpreted sensor data at different orders ofderivation or integration.

For example, inertial sensor 122 module may itself include embeddedcomputing modules and interfaces by which the inertial sensor 122 modulemay provide values of speed or velocity, calculating a first-orderintegral of acceleration data obtained via the accelerometer component.Additionally, or alternatively, inertial sensor 122 may output raw data(e.g., accelerometer data, gyroscope data, other data, or combinationsthereof) in various suitable formats.

Chronometer 124 may be a clock or watch, with an optional display for auser to tell the time therefrom. Additionally, or alternatively, system100 may interface with chronometer 124 to obtain time readings ortimestamps for ordering and aging time-sequenced data as received fromany of the other sensors in the group of sensors 120.

Chronometer 124 may be implemented as a digital clock, e.g., with atimer circuit and/or crystal resonator, for example. Optionally,chronometer 124 may automatically synchronize with another time source,such as an atomic clock, via network protocols (e.g., Network TimeProtocol (NTP) over the Internet) and/or via radio-frequency (RF)broadcast signals, e.g., for radio clocks.

Photodetector 126 may be any type of light sensor, light meter, orsimilar detector of electromagnetic radiation, particularly fordetecting or measuring visible light. Photodetector 126 may beimplemented via at least one photoresistor, photodiode, or othermechanism, material, or other device that may convert received light(e.g., ambient light, or other light shining on photoelectric element(s)of photodetector 126) into one or more electrical signals.

Photodetector 126 may include an array of photoelectric elements orsimilar light sensors, such as to form an image sensor or digitalcamera, in some embodiments. Photodetector 126 may be configured, forsome use cases, to interpret distance or movement of objects, performimage recognition (e.g., using neural networks, computer vision,artificial intelligence, or similar techniques), and/or may, incombination with a light-emitting element, perform Time-of-Flight (ToF)measurements with respect to other objects.

The electrical signals may, according to some embodiments, be convertedinto discrete digital signals or values for digital data storage andtransmission, for example. A photodetector 126 module, like inertialsensor 122 module, may also include embedded hardware and/or softwareand any suitable interface(s) for other modules, components, or computerhardware or software to interact with photodetector 126 to request,process, or obtain data about light received (sensed or detected) byphotodetector 126.

Rangefinder 128 may include any variety of proximity sensor, e.g.,SONAR, RADAR, LIDAR, or similar ToF measurement or detection of specificobjects, or a scanning map of surrounding objects and/or terrain, or anycombination thereof. A rangefinder 128 module, like inertial sensor 122module, may also include embedded hardware and/or software and anysuitable interface(s) for other modules, components, or computerhardware or software to interact with rangefinder 128 to request,process, or obtain data about scanning/mapping or ToF data determined byrangefinder 128.

Positioning system 130 may include at least one receiver anddetermination component for any variety of location or positioningsystem, e.g., global positioning system (GPS), GLONASS, BeiDou, NavIC,similar satellite-based system, a combination thereof, or equivalentthereof, for positioning and/or tracking of geographical position and/ormovement.

A positioning system 130 module, like inertial sensor 122 module, mayalso include embedded hardware and/or software and any suitableinterface(s) for other modules, components, or computer hardware orsoftware to interact with positioning system 130 to request, process, orobtain data about geographic positioning/movement data determined bypositioning system 130.

Magnetometer 132 may include a compass or compass-like device todetermine an orientation of a magnetic field or direction of magneticnorth. Magnetometer 132 may be implemented using MEMS or NEMS, as withinertial sensor 122. In some embodiments, magnetometer 132 may beintegrated as a component in inertial sensor 122 module, for example.

A magnetometer 132 module, like inertial sensor 122 module, may alsoinclude embedded hardware and/or software and any suitable interface(s)for other modules, components, or computer hardware or software tointeract with magnetometer 132 to request, process, or obtain data aboutgeographic orientation or magnetic-field data determined by magnetometer132.

Acoustic transducer 134 may be any type of sound sensor, sound meter, orsimilar detector of acoustic waveforms, particularly for detecting ormeasuring audible sound. Acoustic transducer 134 may be configured, forexample, to detect subsonic or ultrasonic waveforms, in someembodiments. Photodetector 126 may be implemented via at least onemicrophone or array thereof, MEMS/NEMS, or other device that may convertreceived sound (e.g., mechanical compression wave(s) in an ambientmedium such as air or water) into one or more electrical signals.

The electrical signals may, according to some embodiments, be convertedto discrete digital signals or values for digital data storage andtransmission, for example. An acoustic transducer 134 module, likeinertial sensor 122 module, may also include embedded hardware and/orsoftware and any suitable interface(s) for other modules, components, orcomputer hardware or software to interact with acoustic transducer 134to request, process, or obtain data about audio signals or other sounddata determined by acoustic transducer 134.

Biotelemetry monitor 136 may include a pulse oximeter, pulse counter, orother pulse tracker, for example. Respiratory tracker (e.g., for volumeor composition of breath), movement tracker (e.g., for steps, cycles,altitude), or other tracker for physiological or health-relatedbiotelemetry may be included or integrated via any number of controllersand/or interfaces.

A grouping or array of sensors 120 may be further configured toaccommodate pluggable modules to add or remove various sensors and theircorresponding functionalities. FIG. 1 shows biotelemetry monitor 136,and expansion slot 138, but other embodiments may have any number ofexpansion slots, and any number and type of other sensors included bydefault or as an option, for example, including thermometers, moisturedetectors, substance detectors, etc.

Sensor data output from sensors 120 may be input into at least oneprocessing unit 140. For further processing, processing unit 140 mayinclude a module or component for pre-treatment of data, such as datapre-treatment 142. Data pre-treatment 142 may format raw data, or othersensor data in the form of calculations from the sensors (e.g., inertialsensor 122 derivations/integrations), may be formatted or reformatted bydata pre-treatment 142.

Examples of actions that may be performed by data pre-treatment 142include removing data from certain sensors, converting sensor outputs tocertain predefined formats, filtering extreme values over or underpredetermined thresholds to cut excess samples (or save data for laterstatistical compilations), binarizing, quantizing, vectorizing, otherconversions, etc., as may be suitable for subsequent processing byprocessing unit 140. Processing unit 140 may be implemented via at leastone processor 504 and memory, such as those of FIG. 5.

Processing unit 140 may further include at least one additional module,such as a classifier unit 144 and/or predictor unit 145. Processing unit140, by way of any its internal computational modules or components(142-145), may output at least one prediction (in a form of a proposal,suggestion, recommendation, instruction, etc.) as output 148 to anillumination unit 180, described further below.

A suitable classification model, algorithm, routine, or equivalentprocess may be used by classifier unit 144, includingneural-network-based machine-learning model(s), algorithm(s),routine(s), or equivalent process(es). The same type of processing, withat least one similar or different model, routine, algorithm, or otherprocess, may be implemented with predictor unit 145, to apply a model orother type of rule(s) or decision logic to yield a prediction orcalculation of what the output of the illumination unit 180 may be inthe present or in a near-future state.

Classifier unit 144 may apply an activity classification, for example,to classify an activity in which system 100 (or a user of system 100) ispresently engaged. Based at least in part on the activity classificationgenerated or updated by classifier unit 144, predictor unit 145 mayselect or transition between different lighting profiles stored inmemory, such as data storage 160, and provide output 148 to illuminationunit 180, for controlling illumination output adaptively.

Data storage 160 may be a memory or storage device implemented viavarious electronic, electromagnetic, electromechanical, or otherequivalent types of storage media, to store data in suitable formats forretrieval and updating via processing unit 140 or its componentmodule(s). In some embodiments, data storage 160 may store at least onegeneral data set 162. In further embodiments, data storage 160 mayadditionally store at least one user data set 164, which may begenerated independently of general data set 162, or which may be amodified version of general data set 162, updated based on specificinput(s) and/or behavior(s) of a corresponding user.

Data storage 160 may additionally store a classification training set166 and/or a prediction training set 168. Either or both of theclassification training set 166 or the prediction training set 168 maycorrespond to either or both of general data set 162 or user data set(s)164. Classifier unit 144 of processing unit 140 may accessclassification training set 166 and/or either or both of general dataset 162 or user data set 164, at least for purposes of classification(e.g., activity classification), which may, according to someembodiments, be refined for a particular user using user data set 164.

Additionally, or alternatively, predictor unit 145 of processing unit140 may access prediction training set 168 and/or either or both ofgeneral data set 162 or user data set 164, at least for purposes ofcalculating prediction(s) (e.g., instructions, proposals, orrecommendations for control of illumination unit 180), which may,according to some embodiments, be refined for a particular user usinguser data set 164.

Any of the data stored in data storage 160 may read or write its datavia local or remote machines, e.g., via networks or other interconnects,to synchronize, mirror, or update its stored data with respect to othermachines, databases, repositories, etc. According to some embodiments,at least one of the data sets or training sets stored in data storage160 may be synchronized or updated using a more refined or more accuratedata set or training set, such as from a trusted repository or source oftruth.

Illumination unit 180 may include any number of light-emitting elements.In some embodiments, illumination unit 180 may further include at leastone control unit 186. Additionally, or alternatively, a correspondingcontrol unit may be present as a module or component of processing unit140, e.g., control unit 146 (not shown).

According to some embodiments, light-emitting elements 181 may becontrollable individually or as functional groups of multiplelight-emitting elements, for increased intensity and/or redundancy.Independent power switches for separate light-emitting elements (orfunctional groups thereof), may be, for example, labeled LED1 182 andLED2 184, such as for separate arrays of light-emitting elements.

In this example, LED1 182 may be an array of light-emitting diodes(LEDs) configured in a pattern to allow for a focused, intense lightbeam for relatively long-range illumination in a given direction. Bycontrast, LED2 184 may be a separate array of LEDs configured to allowfor diffuse lighting for relatively near illumination at a relativelywide angle of view.

Additionally, according to some embodiments, each of the multiplelight-emitting elements or functional groups thereof may have at leastone manual override switch 190 (button, knob, rocker, slider, etc.) fora user to control or adjust light output manually, e.g., for each ofLED1 182 (LED1 control 192) and LED2 184 (LED2 control 194)independently, e.g., on/off switch, dials to adjust color, brightness,focus, strobe, etc.

In some further embodiments, one or more additional manual overrideswitches (e.g., processing control 196) to accept or reject predictions,suggestions, or recommendations from the output 148 to illumination unit180, which may in turn feed back into user data set 164 or training sets166, 168 in data storage 160 (as suggested vs. chosen 195). Similarly,any buttons, knobs, rockers, sliders, etc., may be equipped on oralongside illumination unit 180 (or any of the other units 120, 140,160, etc.), to disconnect or disable some or all of the sensor,processing (including switching AI or classifier functionality on/off),data storage, or other smart features and certain computingfunctionality that may be equipped with an illumination device to makeit an adaptive illumination device.

Even with such manual overrides, some embodiments may allow for sensors120, processing unit 140, data storage 160, or any combination thereof,to register events of manual overrides with present sensor data,classifications, predictions, other instructions, etc., for purposes ofimproving various models, algorithms, routines, or other equivalentprocesses for classification, prediction, or both. In some embodiments,this user input in response to the output 148 of processing unit 140 maybe fed back into user data set 164, and other training sets 166 and 168for future calculations. This feedback, in terms of what is suggested byoutput 148 versus what is chosen by users in response (e.g., suggestedvs. chosen 195), may further make the adaptive illumination unit moreadaptive and suited to a user's needs over time. As a result, such andadaptive illumination device may operate better for the user, with lessintervention or manual control from the user, the more often theadaptive illumination device is used.

The combination of processing devices, sensors, and other accompanyingcircuitry, as shown in FIG. 1 may serve to illustrate a non-limitingexample of an adaptive-illumination system or device, the operation ofwhich is described more broadly with respect to FIG. 3, for example.

FIG. 2 depicts an example of inputs and control flow for adaptiveillumination, according to some embodiments of the present disclosure.In particular, FIG. 2 shows a configuration of a system or wearabledevice as an adaptive-illumination platform for multiple light-emittingelements (e.g., LED1 282 and LED2 284 for focused and wide-spread lightbeams, respectively), as an alternative embodiment of the system ofFIG. 1. Each of the light-emitting elements (or functional groupsthereof) may have corresponding independent power controls (not shown)in illumination platform 280, and which may be communicatively coupled,directly or indirectly, with processor or controller 250, including atleast one processing unit (e.g., processor 504 or the like), such as maybe in a power controller such as power controller 188 of FIG. 1,according to some embodiments.

In addition to certain built-in sensors 220, e.g., accelerometer 221,gyroscope 223, and magnetometer 232, communicatively coupled with theprocessor or controller 250, there may also be additional sensors 238coupled directly or indirectly with processor or controller 250,including a GPS 230 or other positioning device, time-of-flight 228device, or other type of proximity sensor or rangefinder device, orother sensors.

In some embodiments, further sensors may be communicatively coupled withillumination platform 280, e.g., photodetector 226, inertial sensor 222,thermometer 237, etc. Illumination platform 280 and any included sensorsmay be provided by a third party as a stand-alone product to be furtherenhanced by processor or controller 250, data storage or transfer 260,and any built-in sensors 220 or additional sensors 238, for example.Thus, according to some use cases, there may be multiple instances ofthe same type of sensor in a given system 200, added to and/or providedwith a separately available platform product, e.g., illuminationplatform 280.

Moreover, according to some example embodiments, a sampling rate of atleast some of the sensors (e.g., built-in sensors 220) in a given system200 may be controlled via at least one sampling-rate control 229, as maybe allowed within any constraints of available sampling rates for eachsensor individually or multiple sensors collectively. Depending on aclassified activity and/or other parameters (e.g., acceleration/speed,brightness of ambient light, manual control, etc.), a sampling rate ofany sensor may be adjusted up or down.

For example, sampling rates of certain sensors may be increased toincrease precision or accuracy of measurements at higher speeds (e.g.,for any of built-in sensors 220 and/or additional sensors 238), or indifferent lighting conditions. Conversely, sampling rates may bereduced, such as when moving at lower speeds. In addition, other factorsmay lead to reduced sampling rates, such as a need or desire to reducenoise in measurements and/or to reduce energy consumption of a sensor orof the system 200 as a whole. According to some use cases, sampling-ratecontrol 229 may be part of a lighting profile and/or may interface withany of the classifier, predictor, or AI/ML components describedelsewhere herein.

In some embodiments, a wireless-communications device (cellular device269), e.g., smartphone, tablet, or other cellular device, may becommunicatively coupled with processor or controller 250 or anyadditional sensors 238, or to provide extended functionality of anysensors that may be included with the cellular device 269, e.g., GPS230.

Various other implementations of computing or control devices, memory,or other electronic data storage, may be connected as appropriate.Optionally, communications link(s) or network technology may beintegrated or modularly attached to enable data transfer to externaldevices or to remote sites.

In addition, the platform has multiple sensors communicatively coupledto the at least one processing unit. Sensors may include one or morephotodetectors, temperature sensors, inertial sensors, magnetometers(e.g., compasses), or a combination thereof. Additionally, oralternatively, additional sensors, such as rangefinders (e.g., proximitysensors, ToF sensors, or equivalent), location/positioning systems(e.g., global positioning system (GPS) or equivalent), other sensors orother functionalities that may be added via another computing device(e.g., mobile or handheld computer, tablet computer, smartphone,smartwatch, etc.), may be communicatively coupled with the system orwearable device as the adaptive-illumination platform as describedelsewhere herein.

Operational examples of the example hardware embodiments depicted inFIGS. 1 and 2 may be seen in terms of functional and logical operation,as described below and depicted in FIGS. 3 and 4, and may besupplemented with further implementation details as additionallydescribed with respect to FIG. 5. These examples provided by way ofFIGS. 1-5 and accompanying descriptions are intended to be illustrative,not prescriptive, exhaustive, or otherwise limiting.

FIG. 3 is a flowchart illustrating a method 300 for operation of theenhanced database platform integration techniques described herein,according to some embodiments. Method 300 may be performed by processinglogic that may comprise hardware (e.g., circuitry, dedicated logic,programmable logic, microcode, etc.), software (e.g., instructionsexecuting on a processing device), or a combination thereof. Not allsteps of method 300 may be needed in all cases to perform the enhancedtechniques disclosed herein. Further, some steps of method 300 may beperformed simultaneously, or in a different order from that shown inFIG. 3, as will be understood by a person of ordinary skill in the art.

Method 300 shall be described with reference to FIGS. 1, 2, 4, and 5.However, method 300 is not limited only to those example embodiments.The steps of method 300 may be performed by at least one computerprocessor coupled to at least one memory device. An example processorand memory device(s) are described above with respect to FIG. 5. In someembodiments, method 300 may be performed by components of systems shownin FIGS. 1, 2, and 4, which may further include at least one processorand memory, such as those of FIG. 5.

In 302, at least one processor 504 may be configured (e.g., via programcode or instructions stored in/on a non-transitory computer-readablestorage medium or device) to receive first sensor data (e.g., via a datastream or retrieved from a data set) generated by at least one sensor ofa plurality of sensors. In an example use case, the plurality of sensorsmay include, but is not limited to, an inertial sensor, a photodetector,a microphone, or a combination thereof, communicatively coupled with awearable adaptive-illumination device or system that also includes alight-emitting element, such as an electric light or similar lamp-typedevice.

Processor 504 and/or any storage media storing instructions may bedisposed in or on the same device or system, or may be communicativelycoupled thereto via a communication line or wireless link with anothercomputing device client device, such as another wearable device, ahandheld computing device, mobile computing device, or othergeneral-purpose computing device, for example.

Any sensor of the plurality of sensors may communicate directly withprocessor 504 or via any number of buses or input/output controllers,hardware- or software-based interfaces, libraries, applicationprogramming interfaces (APIs), data loggers or other storage mechanismsfor data sets, network protocols for publication or subscription, orother communication protocols, such as Message Queue Telemetry Transport(MQTT) or Advanced Message Queuing Protocol (AMQP), to name a fewnon-limiting examples.

In 304, processor 504 may be configured to select a first lightingprofile stored in the memory, based at least in part on the first sensordata. In some example use cases, a lighting profile may be a specificconfiguration, a set of parameters, a set of constraints, a set ofrules, or a combination thereof, defining behavior of a light source orspecific light-emitting element(s) in/on a device or system for adaptiveillumination, according to some embodiments.

A lighting profile may define, to name a few non-limiting examples,electrical input characteristics for specific electric light(s),luminous flux or luminous intensity values for individual or combinedoutputs of one or more light-emitting elements, a ratio of light outputto calculated or detected ambient light, a range of values or thresholdsfor specific events such as adjusting specific parameters of lightoutput, or any combination thereof. Multiple light profiles may beconfigured and/or stored, such as in a memory or storage device, to beedited or retrieved later, for use with adaptive illumination inresponse to various controls or environmental stimuli received via atleast one sensor.

In 306, processor 504 may be configured to instruct the light-emittingelement to emit light in accordance with the first lighting profile. Toinstruct the light-emitting element to emit light in accordance with thefirst lighting profile, processor 504 may communicate directly with thelight-emitting element(s) or via any number of buses or input/outputcontrollers, hardware- or software-based interfaces, libraries, APIs,network protocols, or other communication protocols. Depending on aprevious state of the light-emitting element or any correspondinglighting profile, an actual light output of the light-emitting elementmay change in response to being instructed to emit light in accordancewith the first lighting profile. If the light-emitting element isalready emitting light in accordance with the first lighting profile asdefined, then the existing state of the light-emitting element maypersist without change in response to being so instructed.

In 308, processor 504 may be configured to receive second sensor data(e.g., via a data stream or retrieved from a data set) generated by theat least one sensor of a plurality of sensors. In an example use case,the plurality of sensors may include, but is not limited to, an inertialsensor (e.g., including gyroscope and/or accelerometer), a photodetector(e.g., photoresistor, photodiode, or similar sensor, material, or deviceconfigured to convert light into electrical and/or mechanical signals),a microphone (e.g., transducer or other sound sensor configured toconvert an acoustic wave into an audio signal electrically and/ormechanically), or a combination thereof, communicatively coupled with awearable adaptive-illumination device or system that may also include alight-emitting element, such as an electric light or similar lamp. Thesecond sensor data may originate from the same sensor(s) as did thefirst sensor data, or the second data may originate from a differentsensor or combination of different or same sensor(s) compared with thesource(s) of the first sensor data. Additional examples are describedfurther herein.

In 310, processor 504 may be configured to update a classificationstored in the memory, in response to the second sensor data beingdifferent from the first sensor data, wherein the classificationcorresponds to an activity, according to some embodiments. A differencebetween the first sensor data and the second sensor data may signify achange in environmental conditions as detected by sensors, e.g., changesin ambient light, position, attitude, acceleration, noise, etc. In someuse cases, differences in sensor data may result from other types ofhands-free control of a given device or system by a user, e.g., nodding,shaking, turning, or other specific motion of the user's head, body, orother part thereof, audible commands, hand signals, etc.

According to some embodiments, a classification may be an activityclassification, which may correspond to an activity in which anapplicable device or system is being used for providing adaptiveillumination. In some use cases, the classification may identify one ormore present activities and/or present environmental conditions withwhich those activities may be occurring. For example, an activityclassification may include hiking, jogging, biking, climbing, skiing,etc. Other classifications may include weather, terrain, acceleration,or other variables, separately or in combination with activityclassifications or any other classifications.

When performing adjustments, such as by transitioning to anotherlighting profile and/or instructing light output in accordance with agiven profile, etc., the transitioning and/or instructing may beperformed in accordance with activity-specific rules, which may be setin advance to implement domain-specific knowledge for each correspondingactivity, and selected on the fly in response to an activityclassification, which may be updated via processor 504 per 310 asdescribed above.

In some embodiments, generating or updating a classification may involveany number of classification algorithms, any related data structures, orsimilar processes, e.g., probabilistic or predictive forecasting model,hidden Markov model, Kalman filter (FKF, LQE, etc.), Bayesian inference,Gaussian process, k-means clustering, kernel perceptron, multi-layerperceptron, kernel machine, support-vector machine (SVM), change-pointdetector, convolutional neural network (CNN) or other artificial neuralnetwork (ANN), regression analysis decision tree, random forest,supervised or unsupervised machine learning (ML) model or equivalentprocess, listing only a few non-limiting examples. For classification,including ML-based classification, training, or related processes, agiven device or system may store its own classification models and datasets locally, giving preference to its locally collected models and datasets and over predefined models or preloaded training data (default datasets) or the like, for example.

Depending on available computing power and energy sources, certaintechniques may perform better under certain constraints, e.g., requiringlow power consumption, or limited network communications, or no remoteprocessing of sensor data or other data sets related to classification,in some use cases. Wearable devices for adaptive illumination mayinclude at least one artificial intelligence (AI)-enabled low-poweredge-device controller, alongside or integrated with at least oneprocessor 504, to perform, or assist with performing, classification,such as activity classification, using any of the techniques describedherein.

In 312, processor 504 may be configured to transition from the firstlighting profile to a second lighting profile stored in the memory, inresponse to the updating of 310. To perform this transition, processor504 may substitute the first lighting profile with the second lightingprofile in a given memory location, or may redirect a given reference orindirection to a different memory location in which the second lightingprofile is stored, for example.

The transition may be triggered in response to the updating of 310, suchas where the updating of 310 changes a present classification to a newclassification value that may correspond to a different lighting profilein comparison with a previous classification value, in some example usecases. According to some embodiments, predefined safety overrides orother similar types of rules may prevent certain transitions, or mayprevent or limit certain actions in response to certain transitions. Forexample, if a transition from a first lighting profile to a secondlighting profile may exceed operating specifications of a givenlight-emitting element, or may cause a change in light output above apredetermined threshold, processor 504 may, at least temporarily, modifythe second lighting profile, and/or may add or modify an instruction(per 314 below) to maintain light output within safe levels.

In 314, processor 504 may be configured to instruct the light-emittingelement to emit light in accordance with the second lighting profile. Toinstruct the light-emitting element to emit light in accordance with thesecond lighting profile, processor 504 may communicate directly with thelight-emitting element(s) or via any number of buses or input/outputcontrollers, hardware- or software-based interfaces, libraries, APIs,network protocols, or other communication protocols. Depending on aprevious state of the light-emitting element or any correspondinglighting profile, an actual light output of the light-emitting elementmay change in response to being instructed to emit light in accordancewith the second lighting profile.

In further embodiments, processor 504 may be configured to detectchanges in the operating environment of a given device or system thatincludes processor 504 and any sensor(s) for which a given state maychange to a new state. A sensor may be configured to generate a signalbased on a stimulus or an environmental state. Responsive changes in thestimulus or environmental state, a given sensor may generate a differentsignal. In this way, changes in environment, or changes in a state of asensor, may be detected via processing of data streams or stored data,e.g., by a data logger or in comparison with data sets or models builttherefrom.

For instance, via a sensor such as a photodetector (e.g., photoresistor,photodiode, or other light sensor) or array thereof, processor 504 maybe configured to detect a lighting change outside the device or systemthat includes processor 504, from a first lighting state to a secondlighting state, based at least in part on a first signal generated bythe photodetector being different from a second signal generated by thephotodetector. Thus, processor 504 may be configured to evaluate alighting difference between the first lighting state and the secondlighting state, based at least in part on the lighting change asdetected via the photodetector(s).

Following the above example of the ambient light difference, processor504 may be configured to determine, based at least in part on thelighting difference, that at least one first threshold of the firstlighting profile has been crossed. In response to the determining thatthe threshold has been crossed, processor 504 may perform any of theoperations of updating, transitioning, and/or instructing (310, 312,and/or 314) as described above. Thus, with a significant increase ordecrease in ambient light, the light output of the light-emittingelement may be increased or decreased in accordance with a correspondinglighting profile.

It may be understood that a decrease in ambient light may notnecessarily warrant a proportional increase in light output (luminousflux or luminous intensity) of the light-emitting element, because eyesof a person wearing an adaptive-illumination device, or of other personsnearby who may be participating in similar activities at the same time,may adjust to a certain extent to the darker surroundings, and mayrequire less in the way of artificial illumination to continue with theactivity. Similarly, a sudden increase in light detected by aphotodetector may be indicative of another artificial light source,e.g., another person's wearable illumination device, and this type ofevent may warrant reduction or other softening (e.g., change in colortemperature or focus) of light output, so as to avoid hurting the otherperson's eyes.

Lighting profiles, which may be preconfigured and/or otherwise trainedvia ML models and corresponding ML processes, may compensate forlighting changes using suitable or otherwise desirable levels of lightfor specific quantified values of ambient light, time of day, present orfuture activity (per a corresponding activity classification), and soon.

As an example of the threshold being crossed, if the lighting differenceis large enough to warrant a change in the light output, such as via adifferent lighting profile, then processor 504 may perform any of theoperations of updating, transitioning, and/or instructing (310, 312,and/or 314) accordingly, as described above. The threshold may preventunnecessary updating, transitioning, instructing, or other operations,where the difference detected by certain sensors is not sufficient towarrant a change in the light output from the light-emitting element. Insome embodiments, an upper threshold may be referenced, so as to avoidtransitioning light profiles in response to what may be spurious datafrom a likely malfunction or misreading by a given sensor.

In some further embodiments, processor 504 and any accompanyingcircuitry may be configured to classify the activity state in which acorresponding device or system may be engaged, calculate a prediction ofa light output for the light-emitting element suitable for a present orfuture environment of the device or system in consideration of thedetected change in sensor state (reflecting a corresponding change inthe ambient or operating environment of the device or system), based atleast in part on the classifying, such as may include classification ofthe activity state. At least one ML model may be used as a basis for atleast one of the classifying (activity classification) or of thecalculating (prediction or recommendation). In some embodiments,separate models, training sets, algorithms, routines, or other processesmay be used for classifying (e.g., activity classification) versuscalculating (prediction or recommendation) or controlling (instruction)of light output, for example.

As another example embodiment, via a sensor or sensor array, such as atleast one inertial sensor (which may include a gyroscope and/or anaccelerometer), processor 504 may be configured to detect a change inspeed, acceleration, rotation, orientation, angle, or other relativepositioning of or outside the device or system that includes processor504, from a first attitude state (or other inertial state) to a secondattitude state (or another inertial state), based at least in part on afirst signal generated by the inertial sensor being different from asecond signal generated by the inertial sensor. Thus, processor 504 maybe configured to evaluate an attitude difference (attitudinaldifference) between the first attitude state and the second attitudestate, based at least in part on the attitude change as detected via theinertial sensor(s).

Following the above example of the attitude difference based at least inpart on the first or second data comprising acceleration data,orientation data, angular data, or a combination thereof, processor 504may be configured to determine, based at least in part on the attitudedifference, that at least one first threshold of the first lightingprofile has been crossed. In response to the determining that thethreshold has been crossed, processor 504 may perform any of theoperations of updating, transitioning, and/or instructing (310, 312,and/or 314) as described above. Thus, with a significant change inattitude, the light output of the light-emitting element may beincreased or decreased in accordance with a corresponding lightingprofile.

It may be understood that the data measured and/or collected by inertialsensor(s) may provide meaningful inputs to a classifier model orclassifier routine about a present activity in which a wearable device(or user thereof) is engaged. An attitude change of a head-mounted orhelmet-mounted device, such as via orientation data or angular data, forexample, may indicate a direction in which the wearer is looking. Extentof a change in speed or acceleration of a wearable device may beindicative of certain types of activities (e.g., downhill biking orskiing, motorized transportation, etc.), or may indicate a potentiallydangerous situation or accident, which may warrant an emergency lightingprofile (e.g., strobe light or SOS signal).

As an example of the threshold being crossed, if the attitude differenceis large enough to warrant a change in the light output, such as via adifferent lighting profile, then processor 504 may perform any of theoperations of updating, transitioning, and/or instructing (310, 312,and/or 314) accordingly, as described above. The threshold may preventunnecessary updating, transitioning, instructing, or other operations,where the difference detected by certain sensors is not sufficient towarrant a change in the light output from the light-emitting element. Insome embodiments, an upper threshold may be referenced, so as to avoidtransitioning light profiles in response to what may be spurious datafrom a likely malfunction or misreading by a given sensor.

In combination with activity classification and activity-specific rules,for example, for mountain biking with a head-mountedadaptive-illumination device, detecting an attitude change from alow-facing (e.g., below horizon) attitude to a horizontally facing(e.g., at or near the horizon) attitude or orientation of a rider's head(e.g., by a double integral of angular acceleration, by applying aKalman filter to fuse inertial and angular data into orientation data toinfer specific head movement, by applying a Kalman filter to fuseorientation data and acceleration/velocity data for increased precisionof inferences, and/or by other similar or equivalent techniques), alighting profile with wide-spread diffuse illumination may betransitioned to a longer-range light beam, to allow the horizontallyfacing rider to see farther ahead.

Similarly, an acceleration (increase in speed, integrating accelerationdata) may warrant transitioning to a lighting profile with brighter orlonger-range light beam to allow the faster-moving rider to see fartherahead. Profiles may be transitioned in reverse, or differently, inresponse to the rider's head tilting downward, or with deceleration to aslower speed, in some embodiments.

Additionally, or alternatively, via a sensor such as at least onemicrophone or other sound transducer(s) configured to detect at leastone acoustic wave, processor 504 may be configured to detect an audiblechange or sound pattern outside the device or system that includesprocessor 504, from a first acoustic state to a second acoustic state,based at least in part on a first signal generated by the photodetectorbeing different from a second signal generated by the photodetector.Thus, processor 504 may be configured to evaluate an acoustic differencebetween the first acoustic state and the second acoustic state, based atleast in part on the sound change as detected.

Following the above example of the audible change or sound pattern,processor 504 may be configured to determine, based at least in part onthe audible change or sound pattern, that at least one first thresholdof the first lighting profile has been crossed. In response to thedetermining that the threshold has been crossed, processor 504 mayperform any of the operations of updating, transitioning, and/orinstructing (310, 312, and/or 314) as described above. Thus, with asignificant increase or decrease in amount of ambient noise (e.g., windnoise, water noise, engine noise, etc., in the at least one acousticwave detected by the at least one microphone), the light output of thelight-emitting element may be increased or decreased in accordance witha corresponding lighting profile. In some embodiments, an upperthreshold may be referenced, so as to avoid transitioning light profilesin response to what may be spurious data from a likely malfunction ormisreading by a given sensor.

Additionally, or alternatively, using any number of deterministic orprobabilistic routines, models, algorithms, or other processes forpattern recognition, a pattern may be recognized in the at least oneacoustic wave, so as to identify an ambient noise source (e.g., wind,water, engine, etc.), which may further feed back into activityclassification, for example. In a further use case for illuminationdevices equipped with at least one microphone and pattern recognitioncapabilities, processor 504 may be configured to accept audible controlsignals.

Audible control signals may include voice commands, which may be spokenby a wearer of a wearable illumination device with these featuresenabled. In some embodiments, voice commands may be recognized from apredetermined set of specific patterns, which may be generic orcustomized by a given user. Additionally, or alternatively, voicecommands may be handled by voice-enabled controllers (voice control234), natural language processing (NLP), or equivalent processingmethods that may use remote processing capabilities or that may functionoffline. Additionally, or alternatively, audible control signals mayinclude non-verbal audible signals, such as patterns of talking,whistling, humming, singing, clapping, clicking, snapping, sounding ofhorns or bells (e.g., mounted on vehicles), or the like, to name a fewnon-limiting examples.

As a result of implementing and/or performing enhanced techniques asdescribed herein, users of enhanced adaptive-illumination devices perthis disclosure may effectively realize an autonomous wearable light,which is not only hands-free but also embodies a more ergonomic andintuitive “control-less” concept, at least to the effect that users maybe able to reduce or avoid manual configuration and adjustment duringuse. These benefits may be further built upon through auto-tuning viarepeated use and effective machine learning, in some example use cases.

FIG. 4 depicts alternative data flows underlying certain examples ofadaptive illumination, according to some embodiments of the presentdisclosure.

At the top of FIG. 4 is a tiered process 400 a, in which sensor data maybe provided from sensor(s) 420 a as input both to a classifier unit, ona first level, and to controller unit 446, which may applyactivity-specific rules using decision logic, on a second leveldependent on the first level. Thus, if the classifier unit 444 updatesan activity classification based on specific sensor data, then thecontroller unit 446 may apply different activity-specific rules to thesame specific sensor data from sensors 420 a.

Any suitable classification model, algorithm, routine, or equivalentprocess may be used by classifier unit 444, includingneural-network-based ML processes. The same (additionally, oralternatively, including a predictor unit 445 (not shown)) may apply forthe decision logic of controller unit 446 to yield a prediction orcalculation of what the output of an adaptive-illumination device may bein the present or in a near-future state. In some embodiments,controller unit 446 may implement decision logic, such as by adeterministic binary tree, for example. In such embodiments, otherlow-overhead classification may also be used with the classifier unit444, e.g., shallow ANNs, linear SVM, threshold-based filtering, etc.,for low-power, offline processing. The result of such processing, for agiven device state or sample of sensor data, may be an output 448 aincluding calculated prediction or recommendation, provided as anillumination proposal, lighting profile, and/or instruction(s) to outputlight from a light-emitting element accordingly.

Additionally, or alternatively, a black-box process 400 b at the bottomof FIG. 4 shows a separate flow architecture may involve feeding sensordata from sensors 420 b, any other parameters (such as activities orlighting profiles) or other input data (not shown), into a neuralnetwork, ML model or process, or other AI-based compute module 440 forclassification and/or prediction/recommendation output 448 b.

The AI-based processes used with compute module 440 may thus includesimilar functionality as with other algorithms, data structures, andother processes (e.g., decision trees, conditional logic) that may beused to implement a flat or tiered process, such as tiered process 400a, but may additionally or alternatively leverage ML capabilities tofacilitate refinement or evolution of black-box process 400 b over time.This computational architecture may thus provide recommendations,proposals, and/or profiles that become more relevant to a user foradaptive illumination the more the user engages with anadaptive-illumination platform that uses black-box process 400 b.Ensuing result(s) of such processing, for a given device state or sampleof sensor data, may be an output 448 b including calculated predictionor recommendation, provided as an illumination proposal, lightingprofile, and/or instruction(s) to output light from at least onelight-emitting element accordingly.

However, whereas controller unit 446 may depend on predefinedactivity-specific rules that implement domain-specific knowledge, forpredefined activities (e.g., skiing, cycling, mountaineering, etc.),compute module 440 may deliver suitable results even withoutpreprogrammed rules or domain knowledge. In this way, the actualactivity may be treated as a black box by compute module 440.

Here, compute module 440 may instead learn from certain training orcalibration runs, which may involve some manual adjustment or correctionby a user. Via the sensor data, user configurations, and other inputs,compute module 440 may, in turn, develop its own effective activityclassifications, rules, illumination proposals/lighting profiles, etc.,for essentially any variety of activities, without preloaded data setsor preprogrammed rules for the activities to which it may adapt, e.g.,via AI/ML or ANN techniques, according to some example embodiments.

Various embodiments may be implemented, for example, using one or morecomputer systems, such as computer system 500 shown in FIG. 5. One ormore computer systems 500 may be used, for example, to implement any ofthe embodiments discussed herein, as well as combinations andsub-combinations thereof.

Computer system 500 may include one or more processors (also calledcentral processing units, or CPUs), such as a processor 504. Processor504 may be connected to a bus or communication infrastructure 506.

Computer system 500 may also include user input/output device(s) 503,such as monitors, keyboards, pointing devices, etc., which maycommunicate with communication infrastructure 506 through userinput/output interface(s) 502.

One or more of processors 504 may be a graphics processing unit (GPU).In an embodiment, a GPU may be a processor that is a specializedelectronic circuit designed to process mathematically intensiveapplications. With capabilities of general-purpose computing on graphicsprocessing units (GPGPU), the GPU may be useful in various otherapplications. The GPU may have a parallel structure that is efficientfor parallel processing of large blocks of data, such as mathematicallyintensive data common to computer graphics applications, images, videos,vector processing, array processing, etc.

Computer system 500 may also include a main or primary memory 508, suchas random access memory (RAM). Main memory 508 may include one or morelevels of cache. Main memory 508 may have stored therein control logic(i.e., computer software) and/or data.

Computer system 500 may also include one or more secondary storagedevices or memory 510. Secondary memory 510 may include, for example, ahard disk drive as a main storage drive 512 and/or a removable storagedevice or drive 514. Removable storage drive 514 may be a floppy diskdrive, a magnetic tape drive, a compact disk drive, an optical storagedevice, tape backup device, and/or any other storage device/drive.

Removable storage drive 514 may interact with a removable storage unit518. Removable storage unit 518 may include a computer usable orreadable storage device having stored thereon computer software (controllogic) and/or data. Removable storage unit 518 may be a floppy disk,magnetic tape, compact disk, DVD, optical storage disk, and/any othercomputer data storage device. Removable storage drive 514 may read fromand/or write to removable storage unit 518.

Secondary memory 510 may include other means, devices, components,instrumentalities or other approaches for allowing computer programsand/or other instructions and/or data to be accessed by computer system500. Such means, devices, components, instrumentalities or otherapproaches may include, for example, a removable storage unit 522 and aninterface 520. Examples of the removable storage unit 522 and theinterface 520 may include a program cartridge and cartridge interface(such as that found in video game devices), a removable memory chip(such as an EPROM or PROM) and associated socket, a memory stick and USBport, a memory card and associated memory card slot, and/or any otherremovable storage unit and associated interface.

Computer system 500 may further include a communication or networkinterface 524. Communication interface 524 may enable computer system500 to communicate and interact with any combination of externaldevices, external networks, external entities, etc. (individually andcollectively referenced by reference number 528). For example,communication interface 524 may allow computer system 500 to communicatewith external or remote devices 528 over communications path 526, whichmay be wired and/or wireless (or a combination thereof), and which mayinclude any combination of LANs, WANs, the Internet, etc. Wirelessconnections to the Internet may be implemented via standard protocols(e.g., CDMA, GSM, GPRS/EDGE, 2G, 2.5G, 3G, 4G LTE, 5G, 5G-NR, 6G, orequivalent), Control logic and/or data may be transmitted to and fromcomputer system 500 via communication path 526.

Computer system 500 may also be any of a personal digital assistant(PDA), desktop workstation, laptop or notebook computer, netbook,tablet, smart phone, smart watch or other wearable, appliance, part ofthe Internet-of-Things, and/or embedded system, to name a fewnon-limiting examples, or any combination thereof.

Computer system 500 may be a client or server, accessing or hosting anyapplications and/or data through any delivery paradigm, including butnot limited to remote or distributed cloud computing solutions; local oron-premises software (“on-premise” cloud-based solutions); “as aservice” models (e.g., content as a service (CaaS), digital content as aservice (DCaaS), software as a service (SaaS), managed software as aservice (MSaaS), platform as a service (PaaS), desktop as a service(DaaS), framework as a service (FaaS), backend as a service (BaaS),mobile backend as a service (MBaaS), infrastructure as a service (IaaS),etc.); and/or a hybrid model including any combination of the foregoingexamples or other services or delivery paradigms.

Any applicable data structures, file formats, and schemas in computersystem 500 may be derived from standards including but not limited toJavaScript Object Notation (JSON), Extensible Markup Language (XML), YetAnother Markup Language (YAML), Extensible Hypertext Markup Language(XHTML), Wireless Markup Language (WML), MessagePack, XML User InterfaceLanguage (XUL), or any other functionally similar representations aloneor in combination. Alternatively, proprietary data structures, formatsor schemas may be used, either exclusively or in combination with knownor open standards.

In some embodiments, a tangible, non-transitory apparatus or article ofmanufacture comprising a tangible, non-transitory computer-useable orcomputer-readable storage medium having control logic (software orinstructions) stored thereon may also be referred to herein as acomputer program product or program storage device. This includes, butis not limited to, computer system 500, main memory 508, secondarymemory 510, and removable storage units 518 and 522, as well as tangiblearticles of manufacture embodying any combination of the foregoing. Suchcontrol logic, when executed by one or more data processing devices(such as computer system 500), may cause such data processing devices tooperate as described herein.

Based on the teachings contained in this disclosure, it will be apparentto persons skilled in the relevant art(s) how to make and useembodiments of this disclosure using data processing devices, computersystems and/or computer architectures other than that shown in FIG. 5.In particular, embodiments may operate with software, hardware, and/oroperating system implementations other than those described herein.

It is to be appreciated that the Detailed Description section, and notany other section, is intended to be used to interpret the claims. Othersections may set forth one or more but not all example embodiments ascontemplated by the inventor(s), and thus, are not intended to limitthis disclosure or the appended claims in any way.

While this disclosure describes example embodiments for example fieldsand applications, it should be understood that the disclosure is notlimited thereto. Other embodiments and modifications thereto arepossible, and are within the scope and spirit of this disclosure. Forexample, and without limiting the generality of this paragraph,embodiments are not limited to the software, hardware, firmware, and/orentities illustrated in the figures and/or described herein. Further,embodiments (whether or not explicitly described herein) havesignificant utility to fields and applications beyond the examplesdescribed herein.

Embodiments have been described herein with the aid of functionalbuilding blocks illustrating the implementation of specified functionsand relationships thereof. The boundaries of these functional buildingblocks have been arbitrarily defined herein for the convenience of thedescription. Alternate boundaries may be defined as long as thespecified functions and relationships (or equivalents thereof) areappropriately performed. Also, alternative embodiments may performfunctional blocks, steps, operations, methods, etc., using orderingsdifferent than those described herein.

References herein to “one embodiment,” “an embodiment,” “an exampleembodiment,” “some embodiments,” or similar phrases, indicate that theembodiment described may include a particular feature, structure, orcharacteristic, but every embodiment may not necessarily include theparticular feature, structure, or characteristic. Moreover, such phrasesare not necessarily referring to the same embodiment. Further, when aparticular feature, structure, or characteristic is described inconnection with an embodiment, it would be within the knowledge ofpersons skilled in the relevant art(s) to incorporate such feature,structure, or characteristic into other embodiments whether or notexplicitly mentioned or described herein.

Additionally, some embodiments can be described using the expression“coupled” and “connected” along with their derivatives. These terms arenot necessarily intended as synonyms for each other. For example, someembodiments can be described using the terms “connected” and/or“coupled” to indicate that two or more elements are in direct physicalor electrical contact with each other. The term “coupled,” however, canalso mean that two or more elements are not in direct contact with eachother, but yet still co-operate or interact with each other.

The breadth and scope of this disclosure should not be limited by any ofthe above-described example embodiments, but should be defined only inaccordance with the following claims and their equivalents.

We claim:
 1. A wearable adaptive-illumination device, comprising: aplurality of sensors; a light-emitting element; at least one processor;a memory communicatively coupled with the at least one processor andcomprising instructions, stored in the memory and that, when executed bythe at least one processor, cause the at least one processor to performoperations comprising: receiving first sensor data generated by at leastone of the plurality of sensors, wherein the plurality of sensorscomprises a photodetector; selecting, based at least in part on thefirst sensor data, a first lighting profile stored in the memory;instructing the light-emitting element to emit light in accordance withthe first lighting profile; receiving second sensor data generated bythe at least one of the plurality of sensors; updating a classificationstored in the memory, in response to the second sensor data beingdifferent from the first sensor data, wherein the classificationcorresponds to an activity; transitioning from the first lightingprofile to a second lighting profile stored in the memory, in responseto the updating; instructing the light-emitting element to emit light inaccordance with the second lighting profile; detecting a lighting changeoutside the wearable adaptive-illumination device from a first lightingstate to a second lighting state, based at least in part on a firstsignal generated by the photodetector being different from a secondsignal generated by the photodetector; evaluating a lighting differencebetween the first lighting state and the second lighting state, based atleast in part on the lighting change; determining, based at least inpart on the lighting difference, that at least one first threshold ofthe first lighting profile has been crossed; and in response to thedetermining, performing the updating, the transitioning, or theinstructing the light-emitting element to emit light in accordance withthe first or second lighting profiles.
 2. The wearableadaptive-illumination device of claim 1, wherein the plurality ofsensors comprises an inertial sensor.
 3. The wearableadaptive-illumination device of claim 2, wherein the instructions,stored in the memory, when executed by the at least one processor, causethe at least one processor to perform the operations further comprising:detecting an attitude change from a first attitude state to a secondattitude state, based at least in part on first data generated by theinertial sensor being different from second data generated by theinertial sensor, the first or second data comprising acceleration data,orientation data, angular data, or a combination thereof; evaluating anattitude difference between the first attitude state and the secondattitude state; determining, based at least in part on the attitudedifference, that at least one first threshold of the first lightingprofile has been crossed; and in response to the determining, performingthe updating, the transitioning, or the instructing the light-emittingelement to emit light in accordance with the first or second lightingprofiles.
 4. The wearable adaptive-illumination device of claim 3,wherein the instructions, stored in the memory, when executed by the atleast one processor, cause the at least one processor to performoperations further comprising: classifying the activity state of thewearable adaptive-illumination device, based at least in part on theattitude change; calculating a prediction for the light output of thelight-emitting element, based at least in part on the classifying; andin response to the classifying or the calculating, performing thetransitioning or the instructing the light-emitting element to emitlight in accordance with the first or second lighting profiles.
 5. Thewearable adaptive-illumination device of claim 4, wherein at least onemachine-learning model is a basis for at least one of the classifying orthe calculating.
 6. The wearable adaptive-illumination device of claim2, wherein the plurality of sensors comprises an acoustic transducer. 7.The wearable adaptive-illumination device of claim 6, wherein theinstructions, stored in the memory, when executed by the at least oneprocessor, cause the at least one processor to perform operationsfurther comprising: detecting at least one audio signal generated by theacoustic transducer, in response to at least one acoustic wave;recognizing a pattern in the at least one acoustic wave, based at leastin part on at least one audio signal generated by the acoustictransducer; and in response to the recognizing the pattern, performingthe updating, the transitioning, or the instructing the light-emittingelement to emit light in accordance with the first or second lightingprofiles.
 8. The wearable adaptive-illumination device of claim 7,wherein the pattern corresponds to a voice command.
 9. The wearableadaptive-illumination device of claim 7, wherein the pattern correspondsto a change in an amount of wind noise in the at least one acousticwave.
 10. The wearable adaptive-illumination device of claim 1, whereinthe instructions, stored in the memory, when executed by the at leastone processor, cause the at least one processor to perform operationsfurther comprising: classifying the activity state of the wearableadaptive-illumination device, based at least in part on the lightingchange; calculating a prediction for the light output of thelight-emitting element, based at least in part on the classifying; andin response to the classifying or the calculating, performing thetransitioning or the instructing the light-emitting element to emitlight in accordance with the first or second lighting profiles.
 11. Thewearable adaptive-illumination device of claim 10, wherein at least onemachine-learning model is a basis for at least one of the classifying orthe calculating.
 12. The wearable adaptive-illumination device of claim1, wherein the plurality of sensors comprises an acoustic transducer.13. The wearable adaptive-illumination device of claim 12, wherein theinstructions, stored in the memory, when executed by the at least onecomputer processor, cause the at least one processor to performoperations further comprising: detecting at least one audio signalgenerated by the acoustic transducer, in response to at least oneacoustic wave; recognizing a pattern in the at least one acoustic wave,based at least in part on at least one audio signal generated by theacoustic transducer; and in response to the recognizing the pattern,performing the updating, the transitioning, or the instructing thelight-emitting element to emit light in accordance with the first orsecond lighting profiles.
 14. The wearable adaptive-illumination deviceof claim 13, wherein the pattern corresponds to a voice command.
 15. Thewearable adaptive-illumination device of claim 13, wherein the patterncorresponds to a change in an amount of wind noise in the at least oneacoustic wave.
 16. A computer-implemented method, comprising: receiving,via at least one processor, first sensor data generated by at least oneof a plurality of sensors, wherein the plurality of sensors comprises aninertial sensor; selecting, via the at least one computer processor,based at least in part on the first sensor data, a first lightingprofile stored in the memory; instructing, via the at least one computerprocessor, a light-emitting element to emit light in accordance with thefirst lighting profile; receiving, via the at least one computerprocessor, second sensor data generated by the at least one of theplurality of sensors; updating, via the at least one computer processor,a classification stored in the memory, in response to the second sensordata being different from the first sensor data, wherein theclassification corresponds to an activity; transitioning, via the atleast one computer processor, from the first lighting profile to asecond lighting profile stored in the memory, in response to theupdating; instructing, via the at least one computer processor, thelight-emitting element to emit light in accordance with the secondlighting profile; detecting, via the at least one computer processor, anattitude change from a first attitude state to a second attitude state,based at least in part on first data generated by the inertial sensorbeing different from second data generated by the inertial sensor, thefirst or second data comprising acceleration data, orientation data,angular data, or a combination thereof; evaluating, via the at least onecomputer processor, an attitude difference between the first attitudestate and the second attitude state; determining, via the at least onecomputer processor, based at least in part on the attitude difference,that at least one first threshold of the first lighting profile has beencrossed; and in response to the determining, performing the updating,the transitioning, or the instructing the light-emitting element to emitlight in accordance with the first or second lighting profiles.
 17. Thecomputer-implemented method of claim 16, further comprising:classifying, via the at least one computer processor, the activity stateof a user, based at least in part on the attitude change; calculating,via the at least one computer processor, a prediction for the lightoutput of the light-emitting element, based at least in part on theclassifying; and in response to the classifying or the calculating,performing the transitioning or the instructing the light-emittingelement to emit light in accordance with the first or second lightingprofiles.
 18. The computer-implemented method of claim 17, wherein atleast one machine-learning model is a basis for at least one of theclassifying or the calculating.
 19. A computer-implemented method,comprising: receiving, via at least one processor, first sensor datagenerated by at least one of a plurality of sensors, wherein theplurality of sensors comprises a photodetector; selecting, via the atleast one computer processor, based at least in part on the first sensordata, a first lighting profile stored in the memory; instructing, viathe at least one computer processor, a light-emitting element to emitlight in accordance with the first lighting profile; receiving, via theat least one computer processor, second sensor data generated by the atleast one of the plurality of sensors; updating, via the at least onecomputer processor, a classification stored in the memory, in responseto the second sensor data being different from the first sensor data,wherein the classification corresponds to an activity; transitioning,via the at least one computer processor, from the first lighting profileto a second lighting profile stored in the memory, in response to theupdating; instructing, via the at least one computer processor, thelight-emitting element to emit light in accordance with the secondlighting profile; detecting, via the at least one computer processor, alighting change from a first lighting state to a second lighting state,based at least in part on a first signal generated by the photodetectorbeing different from a second signal generated by the photodetector;evaluating, via the at least one computer processor, a lightingdifference between the first lighting state and the second lightingstate, based at least in part on the lighting change; determining, viathe at least one computer processor, based at least in part on thelighting difference, that at least one first threshold of the firstlighting profile has been crossed; and in response to the determining,performing the updating, the transitioning, or the instructing thelight-emitting element to emit light in accordance with the first orsecond lighting profiles.
 20. The computer-implemented method of claim19, further comprising: classifying, via the at least one computerprocessor, the activity state of a user, based at least in part on thelighting change; calculating, via the at least one computer processor, aprediction for the light output of the light-emitting element, based atleast in part on the classifying; and in response to the classifying orthe calculating, performing the transitioning or the instructing thelight-emitting element to emit light in accordance with the first orsecond lighting profiles.
 21. The computer-implemented method of claim20, wherein at least one machine-learning model is a basis for at leastone of the classifying or the calculating.
 22. A computer-implementedmethod, comprising: receiving, via at least one processor, first sensordata generated by at least one of a plurality of sensors, wherein theplurality of sensors comprises an acoustic transducer; selecting, viathe at least one computer processor, based at least in part on the firstsensor data, a first lighting profile stored in the memory; instructing,via the at least one computer processor, a light-emitting element toemit light in accordance with the first lighting profile; receiving, viathe at least one computer processor, second sensor data generated by theat least one of the plurality of sensors; updating, via the at least onecomputer processor, a classification stored in the memory, in responseto the second sensor data being different from the first sensor data,wherein the classification corresponds to an activity; transitioning,via the at least one computer processor, from the first lighting profileto a second lighting profile stored in the memory, in response to theupdating; instructing, via the at least one computer processor, thelight-emitting element to emit light in accordance with the secondlighting profile; detecting, via the at least one computer processor, atleast one audio signal generated by the acoustic transducer, in responseto at least one acoustic wave; recognizing, via the at least onecomputer processor, a pattern in the at least one acoustic wave, basedat least in part on at least one audio signal generated by the acoustictransducer; and in response to the recognizing the pattern, performingthe updating, the transitioning, or the instructing the light-emittingelement to emit light in accordance with the first or second lightingprofiles.
 23. The computer-implemented method of claim 22, wherein thepattern corresponds to a voice command.
 24. The computer-implementedmethod of claim 22, wherein the pattern corresponds to a change in anamount of wind noise in the at least one acoustic wave.
 25. A wearableadaptive-illumination device, comprising: a plurality of sensors; alight-emitting element; at least one processor; a memory communicativelycoupled with the at least one processor and comprising instructions,stored in the memory and that, when executed by the at least oneprocessor, cause the at least one processor to perform operationscomprising: receiving first sensor data generated by at least one of theplurality of sensors, wherein the plurality of sensors comprises aninertial sensor; selecting, based at least in part on the first sensordata, a first lighting profile stored in the memory; instructing thelight-emitting element to emit light in accordance with the firstlighting profile; receiving second sensor data generated by the at leastone of the plurality of sensors; updating a classification stored in thememory, in response to the second sensor data being different from thefirst sensor data, wherein the classification corresponds to anactivity; transitioning from the first lighting profile to a secondlighting profile stored in the memory, in response to the updating;instructing the light-emitting element to emit light in accordance withthe second lighting profile; detecting an attitude change from a firstattitude state to a second attitude state, based at least in part onfirst data generated by the inertial sensor being different from seconddata generated by the inertial sensor, the first or second datacomprising acceleration data, orientation data, angular data, or acombination thereof; evaluating an attitude difference between the firstattitude state and the second attitude state; determining, based atleast in part on the attitude difference, that at least one firstthreshold of the first lighting profile has been crossed; and inresponse to the determining, performing the updating, the transitioning,or the instructing the light-emitting element to emit light inaccordance with the first or second lighting profiles.
 26. The wearableadaptive-illumination device of claim 25, wherein the instructions,stored in the memory, when executed by the at least one processor, causethe at least one processor to perform operations further comprising:classifying the activity state of a user, based at least in part on theattitude change; calculating a prediction for the light output of thelight-emitting element, based at least in part on the classifying; andin response to the classifying or the calculating, performing thetransitioning or the instructing the light-emitting element to emitlight in accordance with the first or second lighting profiles.
 27. Thewearable adaptive-illumination device of claim 26, wherein at least onemachine-learning model is a basis for at least one of the classifying orthe calculating.
 28. A wearable adaptive-illumination device,comprising: a plurality of sensors; a light-emitting element; at leastone processor; a memory communicatively coupled with the at least oneprocessor and comprising instructions, stored in the memory and that,when executed by the at least one processor, cause the at least oneprocessor to perform operations comprising: receiving first sensor datagenerated by at least one of the plurality of sensors, wherein theplurality of sensors comprises an acoustic transducer; selecting, basedat least in part on the first sensor data, a first lighting profilestored in the memory; instructing the light-emitting element to emitlight in accordance with the first lighting profile; receiving secondsensor data generated by the at least one of the plurality of sensors;updating a classification stored in the memory, in response to thesecond sensor data being different from the first sensor data, whereinthe classification corresponds to an activity; transitioning from thefirst lighting profile to a second lighting profile stored in thememory, in response to the updating; instructing the light-emittingelement to emit light in accordance with the second lighting profile;detecting at least one audio signal generated by the acoustictransducer, in response to at least one acoustic wave; recognizing apattern in the at least one acoustic wave, based at least in part on atleast one audio signal generated by the acoustic transducer; and inresponse to the detecting the pattern, performing the updating, thetransitioning, or the instructing the light-emitting element to emitlight in accordance with the first or second lighting profiles.
 29. Thewearable adaptive-illumination device of claim 28, wherein the patterncorresponds to a voice command.
 30. The wearable adaptive-illuminationdevice of claim 28, wherein the pattern corresponds to a change in anamount of wind noise in the at least one acoustic wave.